home *** CD-ROM | disk | FTP | other *** search
/ Collection of Tools & Utilities / Collection of Tools and Utilities.iso / turbovis / tvutil01.zip / ALEXLEVI.EXE / ALEXLEVI / DEMO / DEMO_VGA.C < prev    next >
C/C++ Source or Header  |  1994-04-12  |  20KB  |  307 lines

  1.  
  2. /*
  3.  
  4. ************************************************************************
  5. *                                                                      *
  6. *    This procedure was made by Alex Levitas' "VGA Font Editor".       *
  7. *                                                                      *
  8. ************************************************************************
  9.  
  10.  This procedure changes EGA/VGA screen font in text mode.
  11.  
  12.                            W A R N I N G ! ! !
  13.  This procedure DOES NOT check EGA/VGA existence, but ONLY download font.
  14.  
  15.  Before using this procedure, it is RECOMMENDED to reset current screen
  16.  mode, otherwise you will have PROBLEMS with the color palette.
  17.  
  18.  To use this procedure in your program, insert the directive
  19.  
  20.     #include "DEMO_VGA.C"
  21.  
  22.  If you want to use more than one changed font in your program, you
  23.  must change procedure name in each source file.
  24.  
  25. */
  26.  
  27. #include <dos.h>
  28.  
  29. void ChangeVGAFont()
  30.  
  31. {
  32.  
  33.  unsigned char Font[256][16] =
  34.   {
  35.     {  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
  36.     {  0,  0,  0,126,129,165,129,129,189,153,129,126,  0,  0,  0,  0},
  37.     {  0,  0,  0,126,255,219,255,255,195,231,255,126,  0,  0,  0,  0},
  38.     {  0,  0,  0,  0, 54,127,127,127,127, 62, 28,  8,  0,  0,  0,  0},
  39.     {  0,  0,  0,  0,  8, 28, 62,127, 62, 28,  8,  0,  0,  0,  0,  0},
  40.     {  0,  0,  0, 24, 60, 60,231,231,231, 24, 24, 60,  0,  0,  0,  0},
  41.     {  0,  0,  0, 24, 60,126,255,255,126, 24, 24, 60,  0,  0,  0,  0},
  42.     {  0,  0,  0,  0,  0,  0, 24, 60, 60, 24,  0,  0,  0,  0,  0,  0},
  43.     {255,255,255,255,255,255,231,195,195,231,255,255,255,255,255,255},
  44.     {  0,  0,  0,  0,  0, 60,102, 66, 66,102, 60,  0,  0,  0,  0,  0},
  45.     {255,255,255,255,255,195,153,189,189,153,195,255,255,255,255,255},
  46.     {  0,  0,  0, 15,  7, 13, 25, 60,102,102,102, 60,  0,  0,  0,  0},
  47.     {  0,  0,  0, 60,102,102,102, 60, 24,126, 24, 24,  0,  0,  0,  0},
  48.     {  0,  0,  0, 63, 51, 63, 48, 48, 48,112,240,224,  0,  0,  0,  0},
  49.     {  0,  0,  0,127, 99,127, 99, 99, 99,103,231,230,192,  0,  0,  0},
  50.     {  0,  0,  0, 24, 24,219, 60,231, 60,219, 24, 24,  0,  0,  0,  0},
  51.     {  0,  0,  0, 64, 96,112,124,127,124,112, 96, 64,  0,  0,  0,  0},
  52.     {  0,  0,  0,  1,  3,  7, 31,127, 31,  7,  3,  1,  0,  0,  0,  0},
  53.     {  0,  0,  0, 24, 60,126, 24, 24, 24,126, 60, 24,  0,  0,  0,  0},
  54.     {  0,  0,  0, 51, 51, 51, 51, 51, 51,  0, 51, 51,  0,  0,  0,  0},
  55.     {  0,  0,  0,127,219,219,219,123, 27, 27, 27, 27,  0,  0,  0,  0},
  56.     {  0,  0, 62, 99, 48, 28, 54, 99, 99, 54, 28,  6, 99, 62,  0,  0},
  57.     {  0,  0,  0,  0,  0,  0,  0,  0,  0,127,127,127,  0,  0,  0,  0},
  58.     {  0,  0,  0, 24, 60,126, 24, 24, 24,126, 60, 24,126,  0,  0,  0},
  59.     {  0,  0,  0, 24, 60,126, 24, 24, 24, 24, 24, 24,  0,  0,  0,  0},
  60.     {  0,  0,  0, 24, 24, 24, 24, 24, 24,126, 60, 24,  0,  0,  0,  0},
  61.     {  0,  0,  0,  0,  0, 12,  6,127,  6, 12,  0,  0,  0,  0,  0,  0},
  62.     {  0,  0,  0,  0,  0, 24, 48,127, 48, 24,  0,  0,  0,  0,  0,  0},
  63.     {  0,  0,  0,  0,  0,  0, 96, 96, 96,127,  0,  0,  0,  0,  0,  0},
  64.     {  0,  0,  0,  0,  0, 36,102,255,102, 36,  0,  0,  0,  0,  0,  0},
  65.     {  0,  0,  0,  0,  8, 28, 28, 62, 62,127,127,  0,  0,  0,  0,  0},
  66.     {  0,  0,  0,  0,127,127, 62, 62, 28, 28,  8,  0,  0,  0,  0,  0},
  67.     {  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
  68.     {  0,  0,  0, 24, 60, 60, 60, 24, 24,  0, 24, 24,  0,  0,  0,  0},
  69.     {  0,  0, 99, 99, 99, 34,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
  70.     {  0,  0,  0, 54, 54,127, 54, 54, 54,127, 54, 54,  0,  0,  0,  0},
  71.     {  0, 12, 12, 62, 99, 97, 96, 62,  3, 67, 99, 62, 12, 12,  0,  0},
  72.     {  0,  0,  0,  0,  0, 97, 99,  6, 12, 24, 51, 99,  0,  0,  0,  0},
  73.     {  0,  0,  0, 28, 54, 54, 28, 59,110,102,102, 59,  0,  0,  0,  0},
  74.     {  0,  0, 48, 48, 48, 96,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
  75.     {  0,  0,  0, 12, 24, 48, 48, 48, 48, 48, 24, 12,  0,  0,  0,  0},
  76.     {  0,  0,  0, 24, 12,  6,  6,  6,  6,  6, 12, 24,  0,  0,  0,  0},
  77.     {  0,  0,  0,  0,  0,102, 60,255, 60,102,  0,  0,  0,  0,  0,  0},
  78.     {  0,  0,  0,  0, 24, 24, 24,255, 24, 24, 24,  0,  0,  0,  0,  0},
  79.     {  0,  0,  0,  0,  0,  0,  0,  0,  0, 24, 24, 24, 48,  0,  0,  0},
  80.     {  0,  0,  0,  0,  0,  0,  0,255,  0,  0,  0,  0,  0,  0,  0,  0},
  81.     {  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 24, 24,  0,  0,  0,  0},
  82.     {  0,  0,  0,  1,  3,  6, 12, 24, 48, 96, 64,  0,  0,  0,  0,  0},
  83.     {  0,  0,  0,126,199,195,195,195,195,195,227,126,  0,  0,  0,  0},
  84.     {  0,  0,  0, 28, 12, 12, 12, 12, 12, 12, 12, 12,  8,  0,  0,  0},
  85.     {  0,  0,  0,126,199,195,102, 44, 24, 48, 97,255,  0,  0,  0,  0},
  86.     {  0,  0,  0, 62, 67,  3,  6, 60,  6,  3,  3,  3, 70, 60,  0,  0},
  87.     {  0,  0,  0,  6, 14, 30, 54,102,255,  6,  6,  6,  4,  0,  0,  0},
  88.     {  0,  0,  1,126, 96, 96,120, 76,  6,  3,  3,  3, 70, 60,  0,  0},
  89.     {  0,  0,  0, 62, 96,192,222,227,195,195,102, 60,  0,  0,  0,  0},
  90.     {  0,  0,  0,127, 99,  3,  6, 12, 24, 48, 48, 48, 32,  0,  0,  0},
  91.     {  0,  0,  0,126,199,195,227,126,199,195,227,126,  0,  0,  0,  0},
  92.     {  0,  0,  0, 62,103,195,195,199,123,  3,  6,124,  0,  0,  0,  0},
  93.     {  0,  0,  0,  0, 24, 24,  0,  0,  0, 24, 24,  0,  0,  0,  0,  0},
  94.     {  0,  0,  0,  0, 24, 24,  0,  0,  0, 24, 24, 48,  0,  0,  0,  0},
  95.     {  0,  0,  0,  6, 12, 24, 48, 96, 48, 24, 12,  6,  0,  0,  0,  0},
  96.     {  0,  0,  0,  0,  0,  0,126,  0,  0,126,  0,  0,  0,  0,  0,  0},
  97.     {  0,  0,  0, 96, 48, 24, 12,  6, 12, 24, 48, 96,  0,  0,  0,  0},
  98.     {  0,  0,  0, 62, 99, 99,  6, 12, 12,  0, 12, 12,  0,  0,  0,  0},
  99.     {  0,  0,  0, 62, 99, 99,111,111,111,110, 96, 62,  0,  0,  0,  0},
  100.     {  0,  0,  0,127, 15, 27, 51, 99,255,195,195,195,  0,  0,  0,  0},
  101.     {  0,  0,  0,222,227,195, 71,126, 99, 67, 71,254,  0,  0,  0,  0},
  102.     {  0,  0,  0,127,195,193,192,192,192,192,225,126,  0,  0,  0,  0},
  103.     {  0,  0,128,254,  3,127,199,195,195,194,100, 56,  0,  0,  0,  0},
  104.     {  0,  0,  0,127,195,193,192,252,192,192, 97, 62,  0,  0,  0,  0},
  105.     {  0,  0,  0,255, 99, 97, 96,124, 96, 96, 96, 96, 96, 96, 64,  0},
  106.     {  0,  0,  0,127,195,193,192,192,207,195, 99, 63,  3,  3,  2,  0},
  107.     {  0,  0,  0,224,192,222,227,195,195,195,198,207,  0,  0,  0,  0},
  108.     {  0,  0,  0, 60, 24, 24, 24, 24, 24, 24, 24, 60,  0,  0,  0,  0},
  109.     {  0,  0,  0, 60, 24, 24, 24, 24, 24, 24, 24, 24, 24, 48, 32,  0},
  110.     {  0,  0,  0,224,103, 99,102,108,124,110,103,227,  0,  0,  0,  0},
  111.     {  0,  0,  0,112, 48, 48, 48, 48, 48, 49, 51,127,  0,  0,  0,  0},
  112.     {  0,  0,  0,227,119,127,107, 99, 99, 99, 99,227,  0,  0,  0,  0},
  113.     {  0,  0,  0,231,113,121,125,111,103, 99, 97,225,  0,  0,  0,  0},
  114.     {  0,  0,  0,126,199,195,195,195,195,194,100, 56,  0,  0,  0,  0},
  115.     {  0,  0,  0,222,231,195,195,195,195,227,243,222,192,128,  0,  0},
  116.     {  0,  0,  0,123,231,195,195,195,195,195,207,123,  3,  2,  0,  0},
  117.     {  0,  0,  0,238,115, 99,103,124,102, 99, 99, 99,  1,  0,  0,  0},
  118.     {  0,  0,  0,125,231,227,112, 62,  7,195,226,188,  0,  0,  0,  0},
  119.     {  0,  0,  0,255,152, 48, 96,192,192,192, 99, 62,  0,  0,  0,  0},
  120.     {  0,  0,  0,227, 99, 99, 99, 99, 99, 99,103, 59,  0,  0,  0,  0},
  121.     {  0,  0,  0,195,195,195,195,195, 99, 54, 28,  8,  0,  0,  0,  0},
  122.     {  0,  0,  0,231, 99, 99, 99, 99,107,127,119,226,  0,  0,  0,  0},
  123.     {  0,  0,  0,195,193, 98, 60, 24, 60, 70,131,195,  0,  0,  0,  0},
  124.     {  0,  0,  0,207,199,195,195, 99, 63,134,198,124,  0,  0,  0,  0},
  125.     {  0,  0,  0,255,131,  3, 14, 60,112,192,193,255,  0,  0,  0,  0},
  126.     {  0,  0,  0, 60, 48, 48, 48, 48, 48, 48, 48, 60,  0,  0,  0,  0},
  127.     {  0,  0,  0, 64, 96,112, 56, 28, 14,  7,  3,  1,  0,  0,  0,  0},
  128.     {  0,  0,  0, 60, 12, 12, 12, 12, 12, 12, 12, 60,  0,  0,  0,  0},
  129.     {  0,  8, 28, 54, 99,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
  130.     {  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,255,  0,  0},
  131.     {  0, 24, 24, 12,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
  132.     {  0,  0,  0,  0,  0,  0,123,199,195,195,231,123,  0,  0,  0,  0},
  133.     {  0,  0,  0,  0,222,227, 67,126, 99, 67, 71,254,  0,  0,  0,  0},
  134.     {  0,  0,  0,  0,  0,  0,127,227,192,192,227,127